home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple Software Dispatch
/
Apple Software Dispatch.iso
/
Software Dispatch Files
/
Battle Chess
/
Guided Tour
/
Guided Tour.rsrc
/
CODE_1.txt
< prev
next >
Wrap
Text File
|
1993-09-09
|
24KB
|
452 lines
# near model CODE resource
# jump table entries: 0-9 (10 of them)
00000000 0000 0000 ori.b D0, 0x0
00000004 0000 0112 ori.b D0, 0x12
export_0:
00000008 4278 0A4A clr.w [0x00000A4A /* FPState */]
0000000C 9DCE sub.l A6, A6
0000000E 2C3C 5354 5253 move.l D6, 0x53545253 /* 'STRS' */
00000014 4EBA 02AC jsr [PC + 0x2AC /* 000002C2 */]
00000018 41FA FFE6 lea.l A0, [PC - 0x1A /* 00000000, value 0x0, cstring "" */]
0000001C 208C move.l [A0], A4
0000001E 4EBA 0078 jsr [PC + 0x78 /* 00000098 */]
00000022 4EBA 036E jsr [PC + 0x36E /* 00000392 */]
00000026 4267 clr.w -[A7]
00000028 4879 0000 FFFF push.l 0xFFFF
0000002E 486F 0004 pea.l [A7 + 0x4]
00000032 4857 pea.l [A7]
00000034 3F3C 0001 move.w -[A7], 0x1
00000038 223A FFCA move.l D1, [PC - 0x36 /* 00000004, value 0x112, cstring "" */]
0000003C 4EB5 1000 jsr [A5 + D1.w]
00000040 206D 006C movea.l A0, [A5 + 0x6C]
00000044 4E90 jsr [A0]
00000046 A9F4 syscall ExitToShell
00000048 48E7 FFF8 movem.l -[A7], D0,D1,D2,D3,D4,D5,D6,D7,A0,A1,A2,A3,A4
0000004C 3E2F 003C move.w D7, [A7 + 0x3C]
00000050 50F8 0A5E st [0x00000A5E /* ResLoad */]
00000054 598F subq.l A7, 4
00000056 2F3C 434F 4445 move.l -[A7], 0x434F4445 /* 'CODE' */
0000005C 3F07 move.w -[A7], D7
0000005E A9A0 syscall GetResource
00000060 201F move.l D0, [A7]+
00000062 6730 beq +0x32 /* 00000094 */
00000064 2640 movea.l A3, D0
00000066 2453 movea.l A2, [A3]
00000068 0892 0007 bclr.b [A2], 0x7
0000006C 6720 beq +0x22 /* 0000008E */
0000006E 4EBA 0098 jsr [PC + 0x98 /* 00000108 */]
00000072 A029 syscall HLock
00000074 598F subq.l A7, 4
00000076 2F3C 4352 454C move.l -[A7], 0x4352454C /* 'CREL' */
0000007C 3F07 move.w -[A7], D7
0000007E A9A0 syscall GetResource
00000080 4EBA 0098 jsr [PC + 0x98 /* 0000011A */]
00000084 201F move.l D0, [A7]+
00000086 670C beq +0xE /* 00000094 */
00000088 2040 movea.l A0, D0
0000008A 4EBA 0058 jsr [PC + 0x58 /* 000000E4 */]
label0000008E:
0000008E 4CDF 1FFF movem.l D0,D1,D2,D3,D4,D5,D6,D7,A0,A1,A2,A3,A4, [A7]+
00000092 4E75 rts
label00000094:
00000094 700F moveq.l D0, 0x0F
00000096 A9C9 syscall SysError
fn00000098:
00000098 598F subq.l A7, 4
0000009A 2F3C 5A45 524F move.l -[A7], 0x5A45524F /* 'ZERO' */
000000A0 4267 clr.w -[A7]
000000A2 A9A0 syscall GetResource
000000A4 2457 movea.l A2, [A7]
000000A6 598F subq.l A7, 4
000000A8 2F3C 4441 5441 move.l -[A7], 0x44415441 /* 'DATA' */
000000AE 4267 clr.w -[A7]
000000B0 A9A0 syscall GetResource
000000B2 2057 movea.l A0, [A7]
000000B4 2050 movea.l A0, [A0]
000000B6 2278 0908 movea.l A1, [0x00000908 /* CurStackBase */]
000000BA 2452 movea.l A2, [A2]
000000BC 600E bra +0x10 /* 000000CC */
label000000BE:
000000BE 32D8 move.w [A1]+, [A0]+
000000C0 660A bne +0xC /* 000000CC */
000000C2 321A move.w D1, [A2]+
000000C4 6002 bra +0x4 /* 000000C8 */
label000000C6:
000000C6 4219 clr.b [A1]+
label000000C8:
000000C8 51C9 FFFC dbf D1, -0x6 /* 000000C6 */
label000000CC:
000000CC BBC9 cmpa.l A5, A1
000000CE 66EE bne -0x10 /* 000000BE */
000000D0 A9A3 syscall ReleaseResource
000000D2 A9A3 syscall ReleaseResource
000000D4 598F subq.l A7, 4
000000D6 2F3C 4452 454C move.l -[A7], 0x4452454C /* 'DREL' */
000000DC 4267 clr.w -[A7]
000000DE A9A0 syscall GetResource
000000E0 205F movea.l A0, [A7]+
000000E2 244D movea.l A2, A5
fn000000E4:
000000E4 A025 syscall GetHandleSize
000000E6 2F08 move.l -[A7], A0
000000E8 2050 movea.l A0, [A0]
000000EA E240 asr D0.w, 1
000000EC 6012 bra +0x14 /* 00000100 */
label000000EE:
000000EE 240D move.l D2, A5
000000F0 3218 move.w D1, [A0]+
000000F2 0881 0000 bclr.b D1, 0x0
000000F6 6704 beq +0x6 /* 000000FC */
000000F8 243A FF06 move.l D2, [PC - 0xFA /* 00000000, value 0x0, cstring "" */]
label000000FC:
000000FC D5B2 1000 add.l [A2 + D1.w], D2
label00000100:
00000100 51C8 FFEC dbf D0, -0x16 /* 000000EE */
00000104 A9A3 syscall ReleaseResource
00000106 4E75 rts
fn00000108:
00000108 204B movea.l A0, A3
0000010A 4A78 028E tst.w [0x0000028E /* ROM85 */]
0000010E 6A04 bpl +0x6 /* 00000114 */
00000110 1613 move.b D3, [A3]
00000112 4E75 rts
label00000114:
00000114 A069 syscall HGetState
00000116 1600 move.b D3, D0
00000118 4E75 rts
fn0000011A:
0000011A 4A78 028E tst.w [0x0000028E /* ROM85 */]
0000011E 6A04 bpl +0x6 /* 00000124 */
00000120 1683 move.b [A3], D3
00000122 4E75 rts
label00000124:
00000124 204B movea.l A0, A3
00000126 1003 move.b D0, D3
00000128 A06A syscall HSetState
0000012A 4E75 rts
export_1:
0000012C 205F movea.l A0, [A7]+
0000012E 3218 move.w D1, [A0]+
label00000130:
00000130 3418 move.w D2, [A0]+
00000132 B058 cmp.w D0, [A0]+
00000134 57C9 FFFA dbeq D1, -0x8 /* 00000130 */
00000138 4A42 tst.w D2
label0000013A:
0000013A 67FE beq -0x0 /* 0000013A */
0000013C 4EF0 20FC jmp [A0 + D2.w - 0x4]
export_2:
00000140 205F movea.l A0, [A7]+
00000142 3218 move.w D1, [A0]+
label00000144:
00000144 3418 move.w D2, [A0]+
00000146 B098 cmp.l D0, [A0]+
00000148 57C9 FFFA dbeq D1, -0x8 /* 00000144 */
0000014C 4A42 tst.w D2
label0000014E:
0000014E 67FE beq -0x0 /* 0000014E */
00000150 4EF0 20FA jmp [A0 + D2.w - 0x6]
export_3:
00000154 205F movea.l A0, [A7]+
00000156 3218 move.w D1, [A0]+
00000158 3418 move.w D2, [A0]+
0000015A B042 cmp.w D0, D2
0000015C 6E0A bgt +0xC /* 00000168 */
0000015E 9041 sub.w D0, D1
00000160 6D06 blt +0x8 /* 00000168 */
00000162 D040 add.w D0, D0
00000164 41F0 0002 lea.l A0, [A0 + D0.w + 0x2]
label00000168:
00000168 3010 move.w D0, [A0]
label0000016A:
0000016A 67FE beq -0x0 /* 0000016A */
0000016C 4EF0 0000 jmp [A0 + D0.w]
export_4:
00000170 202F 0004 move.l D0, [A7 + 0x4]
00000174 2F41 0004 move.l [A7 + 0x4], D1
00000178 222F 0008 move.l D1, [A7 + 0x8]
0000017C 2F5F 0004 move.l [A7 + 0x4], [A7]+
00000180 48E7 3C00 movem.l -[A7], D2,D3,D4,D5
00000184 2400 move.l D2, D0
00000186 2601 move.l D3, D1
00000188 4842 swap.w D2
0000018A C4C3 mulu.w D2, D3
0000018C 2800 move.l D4, D0
0000018E 2A01 move.l D5, D1
00000190 4845 swap.w D5
00000192 C8C5 mulu.w D4, D5
00000194 D444 add.w D2, D4
00000196 4842 swap.w D2
00000198 4242 clr.w D2
0000019A C0C1 mulu.w D0, D1
0000019C D082 add.l D0, D2
0000019E 4CDF 003C movem.l D2,D3,D4,D5, [A7]+
000001A2 221F move.l D1, [A7]+
000001A4 4E75 rts
export_5:
000001A6 202F 0004 move.l D0, [A7 + 0x4]
000001AA 2F41 0004 move.l [A7 + 0x4], D1
000001AE 222F 0008 move.l D1, [A7 + 0x8]
000001B2 2F5F 0004 move.l [A7 + 0x4], [A7]+
000001B6 48E7 3100 movem.l -[A7], D2,D3,D7
000001BA 4EBA 009C jsr [PC + 0x9C /* 00000258 */]
000001BE 4CDF 008C movem.l D2,D3,D7, [A7]+
000001C2 221F move.l D1, [A7]+
000001C4 4E75 rts
export_6:
000001C6 202F 0004 move.l D0, [A7 + 0x4]
000001CA 2F41 0004 move.l [A7 + 0x4], D1
000001CE 222F 0008 move.l D1, [A7 + 0x8]
000001D2 2F5F 0004 move.l [A7 + 0x4], [A7]+
000001D6 48E7 3100 movem.l -[A7], D2,D3,D7
000001DA 4EBA 007C jsr [PC + 0x7C /* 00000258 */]
000001DE 2001 move.l D0, D1
000001E0 4CDF 008C movem.l D2,D3,D7, [A7]+
000001E4 221F move.l D1, [A7]+
000001E6 4E75 rts
export_7:
000001E8 202F 0004 move.l D0, [A7 + 0x4]
000001EC 2F41 0004 move.l [A7 + 0x4], D1
000001F0 222F 0008 move.l D1, [A7 + 0x8]
000001F4 2F5F 0004 move.l [A7 + 0x4], [A7]+
000001F8 48E7 3100 movem.l -[A7], D2,D3,D7
000001FC 4EBA 002C jsr [PC + 0x2C /* 0000022A */]
00000200 4CDF 008C movem.l D2,D3,D7, [A7]+
00000204 221F move.l D1, [A7]+
00000206 4E75 rts
export_8:
00000208 202F 0004 move.l D0, [A7 + 0x4]
0000020C 2F41 0004 move.l [A7 + 0x4], D1
00000210 222F 0008 move.l D1, [A7 + 0x8]
00000214 2F5F 0004 move.l [A7 + 0x4], [A7]+
00000218 48E7 3100 movem.l -[A7], D2,D3,D7
0000021C 4EBA 000C jsr [PC + 0xC /* 0000022A */]
00000220 2001 move.l D0, D1
00000222 4CDF 008C movem.l D2,D3,D7, [A7]+
00000226 221F move.l D1, [A7]+
00000228 4E75 rts
fn0000022A:
0000022A 4A80 tst.l D0
0000022C 6A1C bpl +0x1E /* 0000024A */
0000022E 4A81 tst.l D1
00000230 6A0C bpl +0xE /* 0000023E */
00000232 4480 neg.l D0
00000234 4481 neg.l D1
00000236 4EBA 0020 jsr [PC + 0x20 /* 00000258 */]
0000023A 4481 neg.l D1
0000023C 4E75 rts
label0000023E:
0000023E 4480 neg.l D0
00000240 4EBA 0016 jsr [PC + 0x16 /* 00000258 */]
00000244 4480 neg.l D0
00000246 4481 neg.l D1
00000248 4E75 rts
label0000024A:
0000024A 4A81 tst.l D1
0000024C 6A0A bpl +0xC /* 00000258 */
0000024E 4481 neg.l D1
00000250 4EBA 0006 jsr [PC + 0x6 /* 00000258 */]
00000254 4480 neg.l D0
00000256 4E75 rts
fn00000258:
00000258 2E3C 0000 FFFF move.l D7, 0xFFFF
0000025E B280 cmp.l D1, D0
00000260 6306 bls +0x8 /* 00000268 */
00000262 2200 move.l D1, D0
00000264 7000 moveq.l D0, 0x00
00000266 4E75 rts
label00000268:
00000268 B087 cmp.l D0, D7
0000026A 620C bhi +0xE /* 00000278 */
0000026C 80C1 divu.w D0, D1
0000026E 4840 swap.w D0
00000270 3200 move.w D1, D0
00000272 4240 clr.w D0
00000274 4840 swap.w D0
00000276 4E75 rts
label00000278:
00000278 B287 cmp.l D1, D7
0000027A 621A bhi +0x1C /* 00000296 */
0000027C 2E00 move.l D7, D0
0000027E 4240 clr.w D0
00000280 4840 swap.w D0
00000282 80C1 divu.w D0, D1
00000284 4840 swap.w D0
00000286 4847 swap.w D7
00000288 3E00 move.w D7, D0
0000028A 4847 swap.w D7
0000028C 8EC1 divu.w D7, D1
0000028E 3007 move.w D0, D7
00000290 4847 swap.w D7
00000292 3207 move.w D1, D7
00000294 4E75 rts
label00000296:
00000296 2400 move.l D2, D0
00000298 2601 move.l D3, D1
label0000029A:
0000029A E288 lsr D0, 1
0000029C E289 lsr D1, 1
0000029E B287 cmp.l D1, D7
000002A0 62F8 bhi -0x6 /* 0000029A */
000002A2 80C1 divu.w D0, D1
000002A4 C087 and.l D0, D7
label000002A6:
000002A6 3203 move.w D1, D3
000002A8 C2C0 mulu.w D1, D0
000002AA 2E03 move.l D7, D3
000002AC 4847 swap.w D7
000002AE CEC0 mulu.w D7, D0
000002B0 4847 swap.w D7
000002B2 D287 add.l D1, D7
000002B4 6508 bcs +0xA /* 000002BE */
000002B6 9282 sub.l D1, D2
000002B8 6204 bhi +0x6 /* 000002BE */
000002BA 4481 neg.l D1
000002BC 4E75 rts
label000002BE:
000002BE 5340 subq.w D0, 1
000002C0 60E4 bra -0x1A /* 000002A6 */
fn000002C2:
000002C2 7E00 moveq.l D7, 0x00
000002C4 51F8 0A5E sf [0x00000A5E /* ResLoad */]
000002C8 598F subq.l A7, 4
000002CA 2F06 move.l -[A7], D6
000002CC 3F07 move.w -[A7], D7
000002CE A9A0 syscall GetResource
000002D0 201F move.l D0, [A7]+
000002D2 6700 00AE beq +0xB0 /* 00000382 */
000002D6 2640 movea.l A3, D0
000002D8 598F subq.l A7, 4
000002DA 2F0B move.l -[A7], A3
000002DC A9A5 syscall GetResourceSizeOnDisk/SizeResource/SizeRsrc
000002DE 261F move.l D3, [A7]+
000002E0 200B move.l D0, A3
000002E2 2803 move.l D4, D3
000002E4 5247 addq.w D7, 1
000002E6 EF47 asl D7.w, 7
000002E8 5247 addq.w D7, 1
000002EA 3A07 move.w D5, D7
000002EC 6016 bra +0x18 /* 00000304 */
label000002EE:
000002EE 598F subq.l A7, 4
000002F0 2F06 move.l -[A7], D6
000002F2 3F07 move.w -[A7], D7
000002F4 A9A0 syscall GetResource
000002F6 201F move.l D0, [A7]+
000002F8 6700 0088 beq +0x8A /* 00000382 */
000002FC 5247 addq.w D7, 1
000002FE 0684 0000 7FFE addi.l D4, 0x7FFE
label00000304:
00000304 558F subq.l A7, 2
00000306 2F00 move.l -[A7], D0
00000308 A9A6 syscall GetResAttrs
0000030A 301F move.w D0, [A7]+
0000030C 0800 0005 btst.b D0, 0x5
00000310 66DC bne -0x22 /* 000002EE */
00000312 50F8 0A5E st [0x00000A5E /* ResLoad */]
00000316 CF45 exg D7, D5
00000318 9A47 sub.w D5, D7
0000031A 661C bne +0x1E /* 00000338 */
0000031C 2003 move.l D0, D3
0000031E A040 syscall ResrvMem/ReserveMem
00000320 2F0B move.l -[A7], A3
00000322 A9A2 syscall LoadResource
00000324 2013 move.l D0, [A3]
00000326 6700 005A beq +0x5C /* 00000382 */
0000032A 2F0B move.l -[A7], A3
0000032C A992 syscall DetachResource
0000032E 2853 movea.l A4, [A3]
00000330 204B movea.l A0, A3
00000332 A029 syscall HLock
00000334 7001 moveq.l D0, 0x01
00000336 4E75 rts
label00000338:
00000338 2004 move.l D0, D4
0000033A A11E syscall NewPtr, flags=1
0000033C 2008 move.l D0, A0
0000033E 6700 0042 beq +0x44 /* 00000382 */
00000342 2848 movea.l A4, A0
00000344 2F0B move.l -[A7], A3
00000346 A9A2 syscall LoadResource
00000348 2013 move.l D0, [A3]
0000034A 6700 0036 beq +0x38 /* 00000382 */
0000034E 204B movea.l A0, A3
00000350 2003 move.l D0, D3
00000352 6018 bra +0x1A /* 0000036C */
label00000354:
00000354 598F subq.l A7, 4
00000356 2F06 move.l -[A7], D6
00000358 3F07 move.w -[A7], D7
0000035A A9A0 syscall GetResource
0000035C 201F move.l D0, [A7]+
0000035E 6700 0022 beq +0x24 /* 00000382 */
00000362 5247 addq.w D7, 1
00000364 2040 movea.l A0, D0
00000366 203C 0000 7FFE move.l D0, 0x7FFE
label0000036C:
0000036C 2F08 move.l -[A7], A0
0000036E 2050 movea.l A0, [A0]
00000370 224C movea.l A1, A4
00000372 D9C0 add.l A4, D0
00000374 A02E syscall BlockMove/BlockMoveData
00000376 A9A3 syscall ReleaseResource
00000378 51CD FFDA dbf D5, -0x28 /* 00000354 */
0000037C 99C4 sub.l A4, D4
0000037E 264C movea.l A3, A4
00000380 7001 moveq.l D0, 0x01
label00000382:
00000382 4E75 rts
00000384 204B movea.l A0, A3
00000386 4A45 tst.w D5
00000388 6604 bne +0x6 /* 0000038E */
0000038A A023 syscall DisposHandle/DisposeHandle
0000038C 4E75 rts
label0000038E:
0000038E A01F syscall DisposPtr/DisposePtr
00000390 4E75 rts
fn00000392:
00000392 7018 moveq.l D0, 0x18
00000394 4A78 028E tst.w [0x0000028E /* ROM85 */]
00000398 6A04 bpl +0x6 /* 0000039E */
0000039A A51E syscall NewPtrSys, flags=5
0000039C 6002 bra +0x4 /* 000003A0 */
label0000039E:
0000039E A11E syscall NewPtr, flags=1
label000003A0:
000003A0 2248 movea.l A1, A0
000003A2 2B49 0068 move.l [A5 + 0x68], A1
000003A6 303C A9F0 move.w D0, 0xA9F0
000003AA A146 syscall GetTrapAddress, flags=1
000003AC 2208 move.l D1, A0
000003AE 303C A9F0 move.w D0, 0xA9F0
000003B2 2049 movea.l A0, A1
000003B4 A047 syscall SetTrapAddress
000003B6 32FC 4EB9 move.w [A1]+, 0x4EB9
000003BA 41FA FC8C lea.l A0, [PC - 0x374 /* 00000048, value 0x48E7FFF8 */]
000003BE 22C8 move.l [A1]+, A0
000003C0 32FC 4EF9 move.w [A1]+, 0x4EF9
000003C4 22C1 move.l [A1]+, D1
000003C6 303C A9F4 move.w D0, 0xA9F4
000003CA A146 syscall GetTrapAddress, flags=1
000003CC 2208 move.l D1, A0
000003CE 303C A9F4 move.w D0, 0xA9F4
000003D2 2049 movea.l A0, A1
000003D4 A047 syscall SetTrapAddress
000003D6 32FC 4EB9 move.w [A1]+, 0x4EB9
000003DA 41FA FC64 lea.l A0, [PC - 0x39C /* 00000040, value 0x206D006C ' m\0l', cstring " m" */]
000003DE 22C8 move.l [A1]+, A0
000003E0 32FC 4EF9 move.w [A1]+, 0x4EF9
000003E4 22C1 move.l [A1]+, D1
000003E6 4E75 rts
export_9:
000003E8 226D 0068 movea.l A1, [A5 + 0x68]
000003EC 303C A9F0 move.w D0, 0xA9F0
000003F0 2069 0008 movea.l A0, [A1 + 0x8]
000003F4 A047 syscall SetTrapAddress
000003F6 303C A9F4 move.w D0, 0xA9F4
000003FA 2069 0014 movea.l A0, [A1 + 0x14]
000003FE A047 syscall SetTrapAddress
00000400 2049 movea.l A0, A1
00000402 A01F syscall DisposPtr/DisposePtr
00000404 4E75 rts